package com.iclub.util;

import java.util.HashMap;
import java.util.Map;
import java.util.Properties;
import org.springframework.beans.BeansException;
import org.springframework.beans.factory.config.ConfigurableListableBeanFactory;
import org.springframework.beans.factory.config.PropertyPlaceholderConfigurer;

/** 
 * desc:自定义读取properties文件工具类，任意读取properties属性
 * <p>创建人：umpay_zjk 创建日期：2015-5-15 </p>
 * @version V1.0  
 */
public class GlobalParamUtil extends
		PropertyPlaceholderConfigurer{
	// 存储properties文件内容容器
	private static Map<String, Object> ctxPropertiesMap; 
	/**
	 * 重写父类处理properties文件内容的方法
	 */
	@Override
	protected void processProperties(
			ConfigurableListableBeanFactory beanFactoryToProcess,
			Properties props) throws BeansException {
		super.processProperties(beanFactoryToProcess, props); 
        ctxPropertiesMap = new HashMap<String, Object>(); 
        for (Object key : props.keySet()) { 
            String keyStr = key.toString(); 
            String value = props.getProperty(keyStr); 
            ctxPropertiesMap.put(keyStr, value); 
        } 
	}
	/**
	 * 根据属性key获取对应的属性内容
	 * desc:
	 * <p>创建人：umpay_zjk , 2015-5-15 下午1:55:49</p>
	 * @param name
	 * @return
	 */
	public static Object getContextProperty(String name) { 
        return ctxPropertiesMap.get(name); 
    }
	/**
	 * 
	 * desc:读取系统环境参数配置
	 * <p>创建人：umpay_zjk , 2015-6-1 下午4:25:37</p>
	 * @param key
	 * @return
	 */
	public static String getGlobalParam(String key){
		 String result = (String) getContextProperty(key);
		 return result;
	}
}
